<?php
/**
 * Hesperos libraries
 *
 * @author       Krzysztof Kardasz <krzysztof.kardasz@gmail.com>
 * @copyright    Copyright (c) 2011 Krzysztof Kardasz
 * @category     Hesperos
 * @package      View
 * @subpackage   Helper
 * @version 	 SVN: $Id$
 * @filesource
 */

/**
 * Internacjonalizacja
 *
 * @author       Krzysztof Kardasz <krzysztof.kardasz@gmail.com>
 * @copyright    Copyright (c) 2011 Krzysztof Kardasz
 * @category     Hesperos
 * @package      View
 * @subpackage   Helper
 * @version 	 SVN: $Id$
 */
class Hesperos_View_Helper_I18n extends Zend_View_Helper_Abstract
{
    /**
     * Zwraca instancję obiektu
     * 
     * @return Zend_View_Helper_i18n
     */
    public function i18n ()
    {
       return $this;
    }
    
    /**
     * Definiuje wersję językową
     * 
     * @param string $locale
     * @return Zend_View_Helper_i18n
     */
    public function setLocale ($locale)
    {
        if(Hesperos_Translate_Manager::getTranslate() !== null && Hesperos_Translate_Manager::getTranslate()->isAvailable($locale)) {
            Hesperos_Translate_Manager::getTranslate()->setLocale($locale);
        }
       return $this;
    }
    
    /**
     * Zwraca tłumaczenie źródła
     * 
     * @param  string $messageId źródło tłumaczenia
     * @return string
     */
    public function _ ($messageId)
    {
        if(Hesperos_Translate_Manager::getTranslate() !== null && Hesperos_Translate_Manager::getTranslate()->getAdapter()->getLocale()) {
            return Hesperos_Translate_Manager::getTranslate()->_($messageId);
        }
        return $messageId;
    }
}
